/* SPDX-License-Identifier: Apache-2.0 */

/* SoC level DTS fixup file */

#define DT_NUM_IRQ_PRIO_BITS	DT_ARM_V7M_NVIC_E000E100_ARM_NUM_IRQ_PRIORITY_BITS

#define DT_GPIO_STM32_GPIOA_BASE_ADDRESS	DT_ST_STM32_GPIO_40020000_BASE_ADDRESS
#define DT_GPIO_STM32_GPIOA_CLOCK_BITS_0	DT_ST_STM32_GPIO_40020000_CLOCK_BITS_0
#define DT_GPIO_STM32_GPIOA_CLOCK_BUS_0		DT_ST_STM32_GPIO_40020000_CLOCK_BUS_0
#define DT_GPIO_STM32_GPIOA_CLOCK_CONTROLLER	DT_ST_STM32_GPIO_40020000_CLOCK_CONTROLLER
#define DT_GPIO_STM32_GPIOA_LABEL		DT_ST_STM32_GPIO_40020000_LABEL
#define DT_GPIO_STM32_GPIOA_SIZE		DT_ST_STM32_GPIO_40020000_SIZE
#define DT_GPIO_STM32_GPIOA_CLOCK_BITS		DT_ST_STM32_GPIO_40020000_CLOCK_BITS
#define DT_GPIO_STM32_GPIOA_CLOCK_BUS		DT_ST_STM32_GPIO_40020000_CLOCK_BUS

#define DT_GPIO_STM32_GPIOB_BASE_ADDRESS	DT_ST_STM32_GPIO_40020400_BASE_ADDRESS
#define DT_GPIO_STM32_GPIOB_CLOCK_BITS_0	DT_ST_STM32_GPIO_40020400_CLOCK_BITS_0
#define DT_GPIO_STM32_GPIOB_CLOCK_BUS_0		DT_ST_STM32_GPIO_40020400_CLOCK_BUS_0
#define DT_GPIO_STM32_GPIOB_CLOCK_CONTROLLER	DT_ST_STM32_GPIO_40020400_CLOCK_CONTROLLER
#define DT_GPIO_STM32_GPIOB_LABEL		DT_ST_STM32_GPIO_40020400_LABEL
#define DT_GPIO_STM32_GPIOB_SIZE		DT_ST_STM32_GPIO_40020400_SIZE
#define DT_GPIO_STM32_GPIOB_CLOCK_BITS		DT_ST_STM32_GPIO_40020400_CLOCK_BITS
#define DT_GPIO_STM32_GPIOB_CLOCK_BUS		DT_ST_STM32_GPIO_40020400_CLOCK_BUS

#define DT_GPIO_STM32_GPIOC_BASE_ADDRESS	DT_ST_STM32_GPIO_40020800_BASE_ADDRESS
#define DT_GPIO_STM32_GPIOC_CLOCK_BITS_0	DT_ST_STM32_GPIO_40020800_CLOCK_BITS_0
#define DT_GPIO_STM32_GPIOC_CLOCK_BUS_0		DT_ST_STM32_GPIO_40020800_CLOCK_BUS_0
#define DT_GPIO_STM32_GPIOC_CLOCK_CONTROLLER	DT_ST_STM32_GPIO_40020800_CLOCK_CONTROLLER
#define DT_GPIO_STM32_GPIOC_LABEL		DT_ST_STM32_GPIO_40020800_LABEL
#define DT_GPIO_STM32_GPIOC_SIZE		DT_ST_STM32_GPIO_40020800_SIZE
#define DT_GPIO_STM32_GPIOC_CLOCK_BITS		DT_ST_STM32_GPIO_40020800_CLOCK_BITS
#define DT_GPIO_STM32_GPIOC_CLOCK_BUS		DT_ST_STM32_GPIO_40020800_CLOCK_BUS

#define DT_GPIO_STM32_GPIOD_BASE_ADDRESS	DT_ST_STM32_GPIO_40020C00_BASE_ADDRESS
#define DT_GPIO_STM32_GPIOD_CLOCK_BITS_0	DT_ST_STM32_GPIO_40020C00_CLOCK_BITS_0
#define DT_GPIO_STM32_GPIOD_CLOCK_BUS_0		DT_ST_STM32_GPIO_40020C00_CLOCK_BUS_0
#define DT_GPIO_STM32_GPIOD_CLOCK_CONTROLLER	DT_ST_STM32_GPIO_40020C00_CLOCK_CONTROLLER
#define DT_GPIO_STM32_GPIOD_LABEL		DT_ST_STM32_GPIO_40020C00_LABEL
#define DT_GPIO_STM32_GPIOD_SIZE		DT_ST_STM32_GPIO_40020C00_SIZE
#define DT_GPIO_STM32_GPIOD_CLOCK_BITS		DT_ST_STM32_GPIO_40020C00_CLOCK_BITS
#define DT_GPIO_STM32_GPIOD_CLOCK_BUS		DT_ST_STM32_GPIO_40020C00_CLOCK_BUS

#define DT_GPIO_STM32_GPIOE_BASE_ADDRESS	DT_ST_STM32_GPIO_40021000_BASE_ADDRESS
#define DT_GPIO_STM32_GPIOE_CLOCK_BITS_0	DT_ST_STM32_GPIO_40021000_CLOCK_BITS_0
#define DT_GPIO_STM32_GPIOE_CLOCK_BUS_0		DT_ST_STM32_GPIO_40021000_CLOCK_BUS_0
#define DT_GPIO_STM32_GPIOE_CLOCK_CONTROLLER	DT_ST_STM32_GPIO_40021000_CLOCK_CONTROLLER
#define DT_GPIO_STM32_GPIOE_LABEL		DT_ST_STM32_GPIO_40021000_LABEL
#define DT_GPIO_STM32_GPIOE_SIZE		DT_ST_STM32_GPIO_40021000_SIZE
#define DT_GPIO_STM32_GPIOE_CLOCK_BITS		DT_ST_STM32_GPIO_40021000_CLOCK_BITS
#define DT_GPIO_STM32_GPIOE_CLOCK_BUS		DT_ST_STM32_GPIO_40021000_CLOCK_BUS

#define DT_GPIO_STM32_GPIOF_BASE_ADDRESS	DT_ST_STM32_GPIO_40021400_BASE_ADDRESS
#define DT_GPIO_STM32_GPIOF_CLOCK_BITS_0	DT_ST_STM32_GPIO_40021400_CLOCK_BITS_0
#define DT_GPIO_STM32_GPIOF_CLOCK_BUS_0		DT_ST_STM32_GPIO_40021400_CLOCK_BUS_0
#define DT_GPIO_STM32_GPIOF_CLOCK_CONTROLLER	DT_ST_STM32_GPIO_40021400_CLOCK_CONTROLLER
#define DT_GPIO_STM32_GPIOF_LABEL		DT_ST_STM32_GPIO_40021400_LABEL
#define DT_GPIO_STM32_GPIOF_SIZE		DT_ST_STM32_GPIO_40021400_SIZE
#define DT_GPIO_STM32_GPIOF_CLOCK_BITS		DT_ST_STM32_GPIO_40021400_CLOCK_BITS
#define DT_GPIO_STM32_GPIOF_CLOCK_BUS		DT_ST_STM32_GPIO_40021400_CLOCK_BUS

#define DT_GPIO_STM32_GPIOG_BASE_ADDRESS	DT_ST_STM32_GPIO_40021800_BASE_ADDRESS
#define DT_GPIO_STM32_GPIOG_CLOCK_BITS_0	DT_ST_STM32_GPIO_40021800_CLOCK_BITS_0
#define DT_GPIO_STM32_GPIOG_CLOCK_BUS_0		DT_ST_STM32_GPIO_40021800_CLOCK_BUS_0
#define DT_GPIO_STM32_GPIOG_CLOCK_CONTROLLER	DT_ST_STM32_GPIO_40021800_CLOCK_CONTROLLER
#define DT_GPIO_STM32_GPIOG_LABEL		DT_ST_STM32_GPIO_40021800_LABEL
#define DT_GPIO_STM32_GPIOG_SIZE		DT_ST_STM32_GPIO_40021800_SIZE
#define DT_GPIO_STM32_GPIOG_CLOCK_BITS		DT_ST_STM32_GPIO_40021800_CLOCK_BITS
#define DT_GPIO_STM32_GPIOG_CLOCK_BUS		DT_ST_STM32_GPIO_40021800_CLOCK_BUS

#define DT_GPIO_STM32_GPIOH_BASE_ADDRESS	DT_ST_STM32_GPIO_40021C00_BASE_ADDRESS
#define DT_GPIO_STM32_GPIOH_CLOCK_BITS_0	DT_ST_STM32_GPIO_40021C00_CLOCK_BITS_0
#define DT_GPIO_STM32_GPIOH_CLOCK_BUS_0		DT_ST_STM32_GPIO_40021C00_CLOCK_BUS_0
#define DT_GPIO_STM32_GPIOH_CLOCK_CONTROLLER	DT_ST_STM32_GPIO_40021C00_CLOCK_CONTROLLER
#define DT_GPIO_STM32_GPIOH_LABEL		DT_ST_STM32_GPIO_40021C00_LABEL
#define DT_GPIO_STM32_GPIOH_SIZE		DT_ST_STM32_GPIO_40021C00_SIZE
#define DT_GPIO_STM32_GPIOH_CLOCK_BITS		DT_ST_STM32_GPIO_40021C00_CLOCK_BITS
#define DT_GPIO_STM32_GPIOH_CLOCK_BUS		DT_ST_STM32_GPIO_40021C00_CLOCK_BUS

#define DT_GPIO_STM32_GPIOI_BASE_ADDRESS	DT_ST_STM32_GPIO_40022000_BASE_ADDRESS
#define DT_GPIO_STM32_GPIOI_CLOCK_BITS_0	DT_ST_STM32_GPIO_40022000_CLOCK_BITS_0
#define DT_GPIO_STM32_GPIOI_CLOCK_BUS_0		DT_ST_STM32_GPIO_40022000_CLOCK_BUS_0
#define DT_GPIO_STM32_GPIOI_CLOCK_CONTROLLER	DT_ST_STM32_GPIO_40022000_CLOCK_CONTROLLER
#define DT_GPIO_STM32_GPIOI_LABEL		DT_ST_STM32_GPIO_40022000_LABEL
#define DT_GPIO_STM32_GPIOI_SIZE		DT_ST_STM32_GPIO_40022000_SIZE
#define DT_GPIO_STM32_GPIOI_CLOCK_BITS		DT_ST_STM32_GPIO_40022000_CLOCK_BITS
#define DT_GPIO_STM32_GPIOI_CLOCK_BUS		DT_ST_STM32_GPIO_40022000_CLOCK_BUS

#define DT_UART_STM32_USART_1_BASE_ADDRESS	DT_ST_STM32_USART_40011000_BASE_ADDRESS
#define DT_UART_STM32_USART_1_BAUD_RATE		DT_ST_STM32_USART_40011000_CURRENT_SPEED
#define DT_UART_STM32_USART_1_IRQ_PRI		DT_ST_STM32_USART_40011000_IRQ_0_PRIORITY
#define DT_UART_STM32_USART_1_NAME		DT_ST_STM32_USART_40011000_LABEL
#define DT_USART_1_IRQ				DT_ST_STM32_USART_40011000_IRQ_0
#define DT_UART_STM32_USART_1_CLOCK_BITS	DT_ST_STM32_USART_40011000_CLOCK_BITS
#define DT_UART_STM32_USART_1_CLOCK_BUS		DT_ST_STM32_USART_40011000_CLOCK_BUS
#define DT_UART_STM32_USART_1_HW_FLOW_CONTROL	DT_ST_STM32_USART_40011000_HW_FLOW_CONTROL

#define DT_UART_STM32_USART_2_BASE_ADDRESS	DT_ST_STM32_USART_40004400_BASE_ADDRESS
#define DT_UART_STM32_USART_2_BAUD_RATE		DT_ST_STM32_USART_40004400_CURRENT_SPEED
#define DT_UART_STM32_USART_2_IRQ_PRI		DT_ST_STM32_USART_40004400_IRQ_0_PRIORITY
#define DT_UART_STM32_USART_2_NAME		DT_ST_STM32_USART_40004400_LABEL
#define DT_USART_2_IRQ				DT_ST_STM32_USART_40004400_IRQ_0
#define DT_UART_STM32_USART_2_CLOCK_BITS	DT_ST_STM32_USART_40004400_CLOCK_BITS
#define DT_UART_STM32_USART_2_CLOCK_BUS		DT_ST_STM32_USART_40004400_CLOCK_BUS
#define DT_UART_STM32_USART_2_HW_FLOW_CONTROL	DT_ST_STM32_USART_40004400_HW_FLOW_CONTROL

#define DT_UART_STM32_USART_3_BASE_ADDRESS	DT_ST_STM32_USART_40004800_BASE_ADDRESS
#define DT_UART_STM32_USART_3_BAUD_RATE		DT_ST_STM32_USART_40004800_CURRENT_SPEED
#define DT_UART_STM32_USART_3_IRQ_PRI		DT_ST_STM32_USART_40004800_IRQ_0_PRIORITY
#define DT_UART_STM32_USART_3_NAME		DT_ST_STM32_USART_40004800_LABEL
#define DT_USART_3_IRQ				DT_ST_STM32_USART_40004800_IRQ_0
#define DT_UART_STM32_USART_3_CLOCK_BITS	DT_ST_STM32_USART_40004800_CLOCK_BITS
#define DT_UART_STM32_USART_3_CLOCK_BUS		DT_ST_STM32_USART_40004800_CLOCK_BUS
#define DT_UART_STM32_USART_3_HW_FLOW_CONTROL	DT_ST_STM32_USART_40004800_HW_FLOW_CONTROL

#define DT_UART_STM32_USART_6_NAME		DT_ST_STM32_USART_40011400_LABEL
#define DT_UART_STM32_USART_6_BASE_ADDRESS	DT_ST_STM32_USART_40011400_BASE_ADDRESS
#define DT_UART_STM32_USART_6_BAUD_RATE		DT_ST_STM32_USART_40011400_CURRENT_SPEED
#define DT_UART_STM32_USART_6_IRQ_PRI		DT_ST_STM32_USART_40011400_IRQ_0_PRIORITY
#define DT_USART_6_IRQ				DT_ST_STM32_USART_40011400_IRQ_0
#define DT_UART_STM32_USART_6_CLOCK_BITS	DT_ST_STM32_USART_40011400_CLOCK_BITS
#define DT_UART_STM32_USART_6_CLOCK_BUS		DT_ST_STM32_USART_40011400_CLOCK_BUS
#define DT_UART_STM32_USART_6_HW_FLOW_CONTROL	DT_ST_STM32_USART_40011400_HW_FLOW_CONTROL

#define DT_UART_STM32_UART_4_NAME		DT_ST_STM32_UART_40004C00_LABEL
#define DT_UART_STM32_UART_4_BASE_ADDRESS	DT_ST_STM32_UART_40004C00_BASE_ADDRESS
#define DT_UART_STM32_UART_4_BAUD_RATE		DT_ST_STM32_UART_40004C00_CURRENT_SPEED
#define DT_UART_STM32_UART_4_IRQ_PRI		DT_ST_STM32_UART_40004C00_IRQ_0_PRIORITY
#define DT_UART_4_IRQ				DT_ST_STM32_UART_40004C00_IRQ_0
#define DT_UART_STM32_UART_4_CLOCK_BITS		DT_ST_STM32_UART_40004C00_CLOCK_BITS
#define DT_UART_STM32_UART_4_CLOCK_BUS		DT_ST_STM32_UART_40004C00_CLOCK_BUS
#define DT_UART_STM32_UART_4_HW_FLOW_CONTROL	DT_ST_STM32_UART_40004C00_HW_FLOW_CONTROL

#define DT_UART_STM32_UART_5_NAME		DT_ST_STM32_UART_40005000_LABEL
#define DT_UART_STM32_UART_5_BASE_ADDRESS	DT_ST_STM32_UART_40005000_BASE_ADDRESS
#define DT_UART_STM32_UART_5_BAUD_RATE		DT_ST_STM32_UART_40005000_CURRENT_SPEED
#define DT_UART_STM32_UART_5_IRQ_PRI		DT_ST_STM32_UART_40005000_IRQ_0_PRIORITY
#define DT_UART_5_IRQ				DT_ST_STM32_UART_40005000_IRQ_0
#define DT_UART_STM32_UART_5_CLOCK_BITS		DT_ST_STM32_UART_40005000_CLOCK_BITS
#define DT_UART_STM32_UART_5_CLOCK_BUS		DT_ST_STM32_UART_40005000_CLOCK_BUS
#define DT_UART_STM32_UART_5_HW_FLOW_CONTROL	DT_ST_STM32_UART_40005000_HW_FLOW_CONTROL

#define DT_USB_BASE_ADDRESS		DT_ST_STM32_OTGFS_50000000_BASE_ADDRESS
#define DT_USB_IRQ			DT_ST_STM32_OTGFS_50000000_IRQ_OTGFS
#define DT_USB_IRQ_PRI			DT_ST_STM32_OTGFS_50000000_IRQ_OTGFS_PRIORITY
#define DT_USB_NUM_BIDIR_ENDPOINTS	DT_ST_STM32_OTGFS_50000000_NUM_BIDIR_ENDPOINTS
#define DT_USB_RAM_SIZE			DT_ST_STM32_OTGFS_50000000_RAM_SIZE
#define DT_USB_MAXIMUM_SPEED		DT_ST_STM32_OTGFS_50000000_MAXIMUM_SPEED
#define DT_USB_CLOCK_BITS		DT_ST_STM32_OTGFS_50000000_CLOCK_BITS
#define DT_USB_CLOCK_BUS		DT_ST_STM32_OTGFS_50000000_CLOCK_BUS

#define DT_WDT_0_NAME			DT_INST_0_ST_STM32_WATCHDOG_LABEL

#define DT_WWDT_0_BASE_ADDRESS		DT_INST_0_ST_STM32_WINDOW_WATCHDOG_BASE_ADDRESS
#define DT_WWDT_0_NAME			DT_INST_0_ST_STM32_WINDOW_WATCHDOG_LABEL
#define DT_WWDT_0_IRQ			DT_INST_0_ST_STM32_WINDOW_WATCHDOG_IRQ_0
#define DT_WWDT_0_IRQ_PRI		DT_INST_0_ST_STM32_WINDOW_WATCHDOG_IRQ_0_PRIORITY
#define DT_WWDT_0_CLOCK_BITS		DT_INST_0_ST_STM32_WINDOW_WATCHDOG_CLOCK_BITS
#define DT_WWDT_0_CLOCK_BUS		DT_INST_0_ST_STM32_WINDOW_WATCHDOG_CLOCK_BUS

#define DT_ADC_1_BASE_ADDRESS		DT_ST_STM32_ADC_40012000_BASE_ADDRESS
#define DT_ADC_1_IRQ			DT_ST_STM32_ADC_40012000_IRQ_0
#define DT_ADC_1_IRQ_PRI		DT_ST_STM32_ADC_40012000_IRQ_0_PRIORITY
#define DT_ADC_1_NAME			DT_ST_STM32_ADC_40012000_LABEL
#define DT_ADC_1_CLOCK_BITS		DT_ST_STM32_ADC_40012000_CLOCK_BITS_0
#define DT_ADC_1_CLOCK_BUS		DT_ST_STM32_ADC_40012000_CLOCK_BUS_0

/* End of SoC Level DTS fixup file */
